1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27 package com.sun.jmx.snmp.IPAcl;
28
29 import java.io.*;
30
31 @SuppressWarnings("unchecked")
32 class Parserimplements ParserTreeConstants, ParserConstants {
33 protected JJTParserState jjtree = new JJTParserState();
34
35
36
37 final public JDMSecurityDefs SecurityDefs() throws ParseException {
38
39 JDMSecurityDefs jjtn000 = new JDMSecurityDefs(JJTSECURITYDEFS);
40 boolean jjtc000 = true;
41 jjtree.openNodeScope(jjtn000);
42 try {
43 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
44 case ACL:
45 AclBlock();
46 break;
47 default:
48 jj_la1[0] = jj_gen;
49 ;
50 }
51 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
52 case TRAP:
53 TrapBlock();
54 break;
55 default:
56 jj_la1[1] = jj_gen;
57 ;
58 }
59 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
60 case INFORM:
61 InformBlock();
62 break;
63 default:
64 jj_la1[2] = jj_gen;
65 ;
66 }
67 jj_consume_token(0);
68 jjtree.closeNodeScope(jjtn000, true);
69 jjtc000 = false;
70 {if (true) return jjtn000;}
71 } catch (Throwable jjte000) {
72 if (jjtc000) {
73 jjtree.clearNodeScope(jjtn000);
74 jjtc000 = false;
75 } else {
76 jjtree.popNode();
77 }
78 if (jjte000 instanceof RuntimeException) {
79 {if (true) throw (RuntimeException)jjte000;}
80 }
81 if (jjte000 instanceof ParseException) {
82 {if (true) throw (ParseException)jjte000;}
83 }
84 {if (true) throw (Error)jjte000;}
85 } finally {
86 if (jjtc000) {
87 jjtree.closeNodeScope(jjtn000, true);
88 }
89 }
90 throw new Error("Missing return statement in function");
91 }
92
93 final public void AclBlock() throws ParseException {
94
95 JDMAclBlock jjtn000 = new JDMAclBlock(JJTACLBLOCK);
96 boolean jjtc000 = true;
97 jjtree.openNodeScope(jjtn000);
98 try {
99 jj_consume_token(ACL);
100 jj_consume_token(ASSIGN);
101 jj_consume_token(LBRACE);
102 label_1:
103 while (true) {
104 AclItem();
105 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
106 case LBRACE:
107 ;
108 break;
109 default:
110 jj_la1[3] = jj_gen;
111 break label_1;
112 }
113 }
114 jj_consume_token(RBRACE);
115 } catch (Throwable jjte000) {
116 if (jjtc000) {
117 jjtree.clearNodeScope(jjtn000);
118 jjtc000 = false;
119 } else {
120 jjtree.popNode();
121 }
122 if (jjte000 instanceof RuntimeException) {
123 {if (true) throw (RuntimeException)jjte000;}
124 }
125 if (jjte000 instanceof ParseException) {
126 {if (true) throw (ParseException)jjte000;}
127 }
128 {if (true) throw (Error)jjte000;}
129 } finally {
130 if (jjtc000) {
131 jjtree.closeNodeScope(jjtn000, true);
132 }
133 }
134 }
135
136 final public void AclItem() throws ParseException {
137
138 JDMAclItem jjtn000 = new JDMAclItem(JJTACLITEM);
139 boolean jjtc000 = true;
140 jjtree.openNodeScope(jjtn000);
141 try {
142 jj_consume_token(LBRACE);
143 jjtn000.com = Communities();
144 jjtn000.access = Access();
145 Managers();
146 jj_consume_token(RBRACE);
147 } catch (Throwable jjte000) {
148 if (jjtc000) {
149 jjtree.clearNodeScope(jjtn000);
150 jjtc000 = false;
151 } else {
152 jjtree.popNode();
153 }
154 if (jjte000 instanceof RuntimeException) {
155 {if (true) throw (RuntimeException)jjte000;}
156 }
157 if (jjte000 instanceof ParseException) {
158 {if (true) throw (ParseException)jjte000;}
159 }
160 {if (true) throw (Error)jjte000;}
161 } finally {
162 if (jjtc000) {
163 jjtree.closeNodeScope(jjtn000, true);
164 }
165 }
166 }
167
168 final public JDMCommunities Communities() throws ParseException {
169
170 JDMCommunities jjtn000 = new JDMCommunities(JJTCOMMUNITIES);
171 boolean jjtc000 = true;
172 jjtree.openNodeScope(jjtn000);
173 try {
174 jj_consume_token(COMMUNITIES);
175 jj_consume_token(ASSIGN);
176 Community();
177 label_2:
178 while (true) {
179 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
180 case COMMA:
181 ;
182 break;
183 default:
184 jj_la1[4] = jj_gen;
185 break label_2;
186 }
187 jj_consume_token(COMMA);
188 Community();
189 }
190 jjtree.closeNodeScope(jjtn000, true);
191 jjtc000 = false;
192 {if (true) return jjtn000;}
193 } catch (Throwable jjte000) {
194 if (jjtc000) {
195 jjtree.clearNodeScope(jjtn000);
196 jjtc000 = false;
197 } else {
198 jjtree.popNode();
199 }
200 if (jjte000 instanceof RuntimeException) {
201 {if (true) throw (RuntimeException)jjte000;}
202 }
203 if (jjte000 instanceof ParseException) {
204 {if (true) throw (ParseException)jjte000;}
205 }
206 {if (true) throw (Error)jjte000;}
207 } finally {
208 if (jjtc000) {
209 jjtree.closeNodeScope(jjtn000, true);
210 }
211 }
212 throw new Error("Missing return statement in function");
213 }
214
215 final public void Community() throws ParseException {
216
217 JDMCommunity jjtn000 = new JDMCommunity(JJTCOMMUNITY);
218 boolean jjtc000 = true;
219 jjtree.openNodeScope(jjtn000);Token t;
220 try {
221 t = jj_consume_token(IDENTIFIER);
222 jjtree.closeNodeScope(jjtn000, true);
223 jjtc000 = false;
224 jjtn000.communityString= t.image;
225 } finally {
226 if (jjtc000) {
227 jjtree.closeNodeScope(jjtn000, true);
228 }
229 }
230 }
231
232 final public JDMAccess Access() throws ParseException {
233
234 JDMAccess jjtn000 = new JDMAccess(JJTACCESS);
235 boolean jjtc000 = true;
236 jjtree.openNodeScope(jjtn000);
237 try {
238 jj_consume_token(ACCESS);
239 jj_consume_token(ASSIGN);
240 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
241 case RO:
242 jj_consume_token(RO);
243 jjtn000.access= RO;
244 break;
245 case RW:
246 jj_consume_token(RW);
247 jjtn000.access= RW;
248 break;
249 default:
250 jj_la1[5] = jj_gen;
251 jj_consume_token(-1);
252 throw new ParseException();
253 }
254 jjtree.closeNodeScope(jjtn000, true);
255 jjtc000 = false;
256 {if (true) return jjtn000;}
257 } finally {
258 if (jjtc000) {
259 jjtree.closeNodeScope(jjtn000, true);
260 }
261 }
262 throw new Error("Missing return statement in function");
263 }
264
265 final public void Managers() throws ParseException {
266
267 JDMManagers jjtn000 = new JDMManagers(JJTMANAGERS);
268 boolean jjtc000 = true;
269 jjtree.openNodeScope(jjtn000);
270 try {
271 jj_consume_token(MANAGERS);
272 jj_consume_token(ASSIGN);
273 Host();
274 label_3:
275 while (true) {
276 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
277 case COMMA:
278 ;
279 break;
280 default:
281 jj_la1[6] = jj_gen;
282 break label_3;
283 }
284 jj_consume_token(COMMA);
285 Host();
286 }
287 } catch (Throwable jjte000) {
288 if (jjtc000) {
289 jjtree.clearNodeScope(jjtn000);
290 jjtc000 = false;
291 } else {
292 jjtree.popNode();
293 }
294 if (jjte000 instanceof RuntimeException) {
295 {if (true) throw (RuntimeException)jjte000;}
296 }
297 if (jjte000 instanceof ParseException) {
298 {if (true) throw (ParseException)jjte000;}
299 }
300 {if (true) throw (Error)jjte000;}
301 } finally {
302 if (jjtc000) {
303 jjtree.closeNodeScope(jjtn000, true);
304 }
305 }
306 }
307
308 final public void Host() throws ParseException {
309
310 JDMHost jjtn000 = new JDMHost(JJTHOST);
311 boolean jjtc000 = true;
312 jjtree.openNodeScope(jjtn000);Token t;
313 try {
314 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
315 case IDENTIFIER:
316 HostName();
317 break;
318 default:
319 jj_la1[7] = jj_gen;
320 if (jj_2_1(2147483647)) {
321 NetMask();
322 } else if (jj_2_2(2147483647)) {
323 NetMaskV6();
324 } else if (jj_2_3(2147483647)) {
325 IpAddress();
326 } else {
327 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
328 case V6_ADDRESS:
329 IpV6Address();
330 break;
331 case INTEGER_LITERAL:
332 IpMask();
333 break;
334 default:
335 jj_la1[8] = jj_gen;
336 jj_consume_token(-1);
337 throw new ParseException();
338 }
339 }
340 }
341 } catch (Throwable jjte000) {
342 if (jjtc000) {
343 jjtree.clearNodeScope(jjtn000);
344 jjtc000 = false;
345 } else {
346 jjtree.popNode();
347 }
348 if (jjte000 instanceof RuntimeException) {
349 {if (true) throw (RuntimeException)jjte000;}
350 }
351 if (jjte000 instanceof ParseException) {
352 {if (true) throw (ParseException)jjte000;}
353 }
354 {if (true) throw (Error)jjte000;}
355 } finally {
356 if (jjtc000) {
357 jjtree.closeNodeScope(jjtn000, true);
358 }
359 }
360 }
361
362 final public void HostName() throws ParseException {
363
364 JDMHostName jjtn000 = new JDMHostName(JJTHOSTNAME);
365 boolean jjtc000 = true;
366 jjtree.openNodeScope(jjtn000);Token t;
367 try {
368 t = jj_consume_token(IDENTIFIER);
369 jjtn000.name.append(t.image);
370 label_4:
371 while (true) {
372 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
373 case DOT:
374 ;
375 break;
376 default:
377 jj_la1[9] = jj_gen;
378 break label_4;
379 }
380 jj_consume_token(DOT);
381 t = jj_consume_token(IDENTIFIER);
382 jjtn000.name.append( "." + t.image);
383 }
384 } finally {
385 if (jjtc000) {
386 jjtree.closeNodeScope(jjtn000, true);
387 }
388 }
389 }
390
391 final public void IpAddress() throws ParseException {
392
393 JDMIpAddress jjtn000 = new JDMIpAddress(JJTIPADDRESS);
394 boolean jjtc000 = true;
395 jjtree.openNodeScope(jjtn000);Token t;
396 try {
397 t = jj_consume_token(INTEGER_LITERAL);
398 jjtn000.address.append(t.image);
399 label_5:
400 while (true) {
401 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
402 case DOT:
403 ;
404 break;
405 default:
406 jj_la1[10] = jj_gen;
407 break label_5;
408 }
409 jj_consume_token(DOT);
410 t = jj_consume_token(INTEGER_LITERAL);
411 jjtn000.address.append( "." + t.image);
412 }
413 } finally {
414 if (jjtc000) {
415 jjtree.closeNodeScope(jjtn000, true);
416 }
417 }
418 }
419
420 final public void IpV6Address() throws ParseException {
421
422 JDMIpV6Address jjtn000 = new JDMIpV6Address(JJTIPV6ADDRESS);
423 boolean jjtc000 = true;
424 jjtree.openNodeScope(jjtn000);Token t;
425 try {
426 t = jj_consume_token(V6_ADDRESS);
427 jjtree.closeNodeScope(jjtn000, true);
428 jjtc000 = false;
429 jjtn000.address.append(t.image);
430 } finally {
431 if (jjtc000) {
432 jjtree.closeNodeScope(jjtn000, true);
433 }
434 }
435 }
436
437 final public void IpMask() throws ParseException {
438
439 JDMIpMask jjtn000 = new JDMIpMask(JJTIPMASK);
440 boolean jjtc000 = true;
441 jjtree.openNodeScope(jjtn000);Token t;
442 try {
443 t = jj_consume_token(INTEGER_LITERAL);
444 jjtn000.address.append(t.image);
445 label_6:
446 while (true) {
447 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
448 case MARK:
449 ;
450 break;
451 default:
452 jj_la1[11] = jj_gen;
453 break label_6;
454 }
455 jj_consume_token(MARK);
456 t = jj_consume_token(INTEGER_LITERAL);
457 jjtn000.address.append( "." + t.image);
458 }
459 } finally {
460 if (jjtc000) {
461 jjtree.closeNodeScope(jjtn000, true);
462 }
463 }
464 }
465
466 final public void NetMask() throws ParseException {
467
468 JDMNetMask jjtn000 = new JDMNetMask(JJTNETMASK);
469 boolean jjtc000 = true;
470 jjtree.openNodeScope(jjtn000);Token t;
471 try {
472 t = jj_consume_token(INTEGER_LITERAL);
473 jjtn000.address.append(t.image);
474 label_7:
475 while (true) {
476 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
477 case DOT:
478 ;
479 break;
480 default:
481 jj_la1[12] = jj_gen;
482 break label_7;
483 }
484 jj_consume_token(DOT);
485 t = jj_consume_token(INTEGER_LITERAL);
486 jjtn000.address.append( "." + t.image);
487 }
488 jj_consume_token(MASK);
489 t = jj_consume_token(INTEGER_LITERAL);
490 jjtree.closeNodeScope(jjtn000, true);
491 jjtc000 = false;
492 jjtn000.mask = t.image;
493 } finally {
494 if (jjtc000) {
495 jjtree.closeNodeScope(jjtn000, true);
496 }
497 }
498 }
499
500 final public void NetMaskV6() throws ParseException {
501
502 JDMNetMaskV6 jjtn000 = new JDMNetMaskV6(JJTNETMASKV6);
503 boolean jjtc000 = true;
504 jjtree.openNodeScope(jjtn000);Token t;
505 try {
506 t = jj_consume_token(V6_ADDRESS);
507 jjtn000.address.append(t.image);
508 jj_consume_token(MASK);
509 t = jj_consume_token(INTEGER_LITERAL);
510 jjtree.closeNodeScope(jjtn000, true);
511 jjtc000 = false;
512 jjtn000.mask = t.image;
513 } finally {
514 if (jjtc000) {
515 jjtree.closeNodeScope(jjtn000, true);
516 }
517 }
518 }
519
520 final public void TrapBlock() throws ParseException {
521
522 JDMTrapBlock jjtn000 = new JDMTrapBlock(JJTTRAPBLOCK);
523 boolean jjtc000 = true;
524 jjtree.openNodeScope(jjtn000);
525 try {
526 jj_consume_token(TRAP);
527 jj_consume_token(ASSIGN);
528 jj_consume_token(LBRACE);
529 label_8:
530 while (true) {
531 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
532 case LBRACE:
533 ;
534 break;
535 default:
536 jj_la1[13] = jj_gen;
537 break label_8;
538 }
539 TrapItem();
540 }
541 jj_consume_token(RBRACE);
542 } catch (Throwable jjte000) {
543 if (jjtc000) {
544 jjtree.clearNodeScope(jjtn000);
545 jjtc000 = false;
546 } else {
547 jjtree.popNode();
548 }
549 if (jjte000 instanceof RuntimeException) {
550 {if (true) throw (RuntimeException)jjte000;}
551 }
552 if (jjte000 instanceof ParseException) {
553 {if (true) throw (ParseException)jjte000;}
554 }
555 {if (true) throw (Error)jjte000;}
556 } finally {
557 if (jjtc000) {
558 jjtree.closeNodeScope(jjtn000, true);
559 }
560 }
561 }
562
563 final public void TrapItem() throws ParseException {
564
565 JDMTrapItem jjtn000 = new JDMTrapItem(JJTTRAPITEM);
566 boolean jjtc000 = true;
567 jjtree.openNodeScope(jjtn000);
568 try {
569 jj_consume_token(LBRACE);
570 jjtn000.comm = TrapCommunity();
571 TrapInterestedHost();
572 label_9:
573 while (true) {
574 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
575 case LBRACE:
576 ;
577 break;
578 default:
579 jj_la1[14] = jj_gen;
580 break label_9;
581 }
582 Enterprise();
583 }
584 jj_consume_token(RBRACE);
585 } catch (Throwable jjte000) {
586 if (jjtc000) {
587 jjtree.clearNodeScope(jjtn000);
588 jjtc000 = false;
589 } else {
590 jjtree.popNode();
591 }
592 if (jjte000 instanceof RuntimeException) {
593 {if (true) throw (RuntimeException)jjte000;}
594 }
595 if (jjte000 instanceof ParseException) {
596 {if (true) throw (ParseException)jjte000;}
597 }
598 {if (true) throw (Error)jjte000;}
599 } finally {
600 if (jjtc000) {
601 jjtree.closeNodeScope(jjtn000, true);
602 }
603 }
604 }
605
606 final public JDMTrapCommunity TrapCommunity() throws ParseException {
607
608 JDMTrapCommunity jjtn000 = new JDMTrapCommunity(JJTTRAPCOMMUNITY);
609 boolean jjtc000 = true;
610 jjtree.openNodeScope(jjtn000);Token t;
611 try {
612 jj_consume_token(TRAPCOMMUNITY);
613 jj_consume_token(ASSIGN);
614 t = jj_consume_token(IDENTIFIER);
615 jjtree.closeNodeScope(jjtn000, true);
616 jjtc000 = false;
617 jjtn000.community= t.image; {if (true) return jjtn000;}
618 } finally {
619 if (jjtc000) {
620 jjtree.closeNodeScope(jjtn000, true);
621 }
622 }
623 throw new Error("Missing return statement in function");
624 }
625
626 final public void TrapInterestedHost() throws ParseException {
627
628 JDMTrapInterestedHost jjtn000 = new JDMTrapInterestedHost(JJTTRAPINTERESTEDHOST);
629 boolean jjtc000 = true;
630 jjtree.openNodeScope(jjtn000);
631 try {
632 jj_consume_token(HOSTS);
633 jj_consume_token(ASSIGN);
634 HostTrap();
635 label_10:
636 while (true) {
637 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
638 case COMMA:
639 ;
640 break;
641 default:
642 jj_la1[15] = jj_gen;
643 break label_10;
644 }
645 jj_consume_token(COMMA);
646 HostTrap();
647 }
648 } catch (Throwable jjte000) {
649 if (jjtc000) {
650 jjtree.clearNodeScope(jjtn000);
651 jjtc000 = false;
652 } else {
653 jjtree.popNode();
654 }
655 if (jjte000 instanceof RuntimeException) {
656 {if (true) throw (RuntimeException)jjte000;}
657 }
658 if (jjte000 instanceof ParseException) {
659 {if (true) throw (ParseException)jjte000;}
660 }
661 {if (true) throw (Error)jjte000;}
662 } finally {
663 if (jjtc000) {
664 jjtree.closeNodeScope(jjtn000, true);
665 }
666 }
667 }
668
669 final public void HostTrap() throws ParseException {
670
671 JDMHostTrap jjtn000 = new JDMHostTrap(JJTHOSTTRAP);
672 boolean jjtc000 = true;
673 jjtree.openNodeScope(jjtn000);Token t;
674 try {
675 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
676 case IDENTIFIER:
677 HostName();
678 break;
679 case INTEGER_LITERAL:
680 IpAddress();
681 break;
682 case V6_ADDRESS:
683 IpV6Address();
684 break;
685 default:
686 jj_la1[16] = jj_gen;
687 jj_consume_token(-1);
688 throw new ParseException();
689 }
690 } catch (Throwable jjte000) {
691 if (jjtc000) {
692 jjtree.clearNodeScope(jjtn000);
693 jjtc000 = false;
694 } else {
695 jjtree.popNode();
696 }
697 if (jjte000 instanceof RuntimeException) {
698 {if (true) throw (RuntimeException)jjte000;}
699 }
700 if (jjte000 instanceof ParseException) {
701 {if (true) throw (ParseException)jjte000;}
702 }
703 {if (true) throw (Error)jjte000;}
704 } finally {
705 if (jjtc000) {
706 jjtree.closeNodeScope(jjtn000, true);
707 }
708 }
709 }
710
711 final public void Enterprise() throws ParseException {
712
713 JDMEnterprise jjtn000 = new JDMEnterprise(JJTENTERPRISE);
714 boolean jjtc000 = true;
715 jjtree.openNodeScope(jjtn000);Token t;
716 try {
717 jj_consume_token(LBRACE);
718 jj_consume_token(ENTERPRISE);
719 jj_consume_token(ASSIGN);
720 t = jj_consume_token(CSTRING);
721 jjtn000.enterprise= t.image;
722 jj_consume_token(TRAPNUM);
723 jj_consume_token(ASSIGN);
724 TrapNum();
725 label_11:
726 while (true) {
727 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
728 case COMMA:
729 ;
730 break;
731 default:
732 jj_la1[17] = jj_gen;
733 break label_11;
734 }
735 jj_consume_token(COMMA);
736 TrapNum();
737 }
738 jj_consume_token(RBRACE);
739 } catch (Throwable jjte000) {
740 if (jjtc000) {
741 jjtree.clearNodeScope(jjtn000);
742 jjtc000 = false;
743 } else {
744 jjtree.popNode();
745 }
746 if (jjte000 instanceof RuntimeException) {
747 {if (true) throw (RuntimeException)jjte000;}
748 }
749 if (jjte000 instanceof ParseException) {
750 {if (true) throw (ParseException)jjte000;}
751 }
752 {if (true) throw (Error)jjte000;}
753 } finally {
754 if (jjtc000) {
755 jjtree.closeNodeScope(jjtn000, true);
756 }
757 }
758 }
759
760 final public void TrapNum() throws ParseException {
761
762 JDMTrapNum jjtn000 = new JDMTrapNum(JJTTRAPNUM);
763 boolean jjtc000 = true;
764 jjtree.openNodeScope(jjtn000);Token t;
765 try {
766 t = jj_consume_token(INTEGER_LITERAL);
767 jjtn000.low= Integer.parseInt(t.image);
768 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
769 case RANGE:
770 jj_consume_token(RANGE);
771 t = jj_consume_token(INTEGER_LITERAL);
772 jjtn000.high= Integer.parseInt(t.image);
773 break;
774 default:
775 jj_la1[18] = jj_gen;
776 ;
777 }
778 } finally {
779 if (jjtc000) {
780 jjtree.closeNodeScope(jjtn000, true);
781 }
782 }
783 }
784
785 final public void InformBlock() throws ParseException {
786
787 JDMInformBlock jjtn000 = new JDMInformBlock(JJTINFORMBLOCK);
788 boolean jjtc000 = true;
789 jjtree.openNodeScope(jjtn000);
790 try {
791 jj_consume_token(INFORM);
792 jj_consume_token(ASSIGN);
793 jj_consume_token(LBRACE);
794 label_12:
795 while (true) {
796 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
797 case LBRACE:
798 ;
799 break;
800 default:
801 jj_la1[19] = jj_gen;
802 break label_12;
803 }
804 InformItem();
805 }
806 jj_consume_token(RBRACE);
807 } catch (Throwable jjte000) {
808 if (jjtc000) {
809 jjtree.clearNodeScope(jjtn000);
810 jjtc000 = false;
811 } else {
812 jjtree.popNode();
813 }
814 if (jjte000 instanceof RuntimeException) {
815 {if (true) throw (RuntimeException)jjte000;}
816 }
817 if (jjte000 instanceof ParseException) {
818 {if (true) throw (ParseException)jjte000;}
819 }
820 {if (true) throw (Error)jjte000;}
821 } finally {
822 if (jjtc000) {
823 jjtree.closeNodeScope(jjtn000, true);
824 }
825 }
826 }
827
828 final public void InformItem() throws ParseException {
829
830 JDMInformItem jjtn000 = new JDMInformItem(JJTINFORMITEM);
831 boolean jjtc000 = true;
832 jjtree.openNodeScope(jjtn000);
833 try {
834 jj_consume_token(LBRACE);
835 jjtn000.comm = InformCommunity();
836 InformInterestedHost();
837 jj_consume_token(RBRACE);
838 } catch (Throwable jjte000) {
839 if (jjtc000) {
840 jjtree.clearNodeScope(jjtn000);
841 jjtc000 = false;
842 } else {
843 jjtree.popNode();
844 }
845 if (jjte000 instanceof RuntimeException) {
846 {if (true) throw (RuntimeException)jjte000;}
847 }
848 if (jjte000 instanceof ParseException) {
849 {if (true) throw (ParseException)jjte000;}
850 }
851 {if (true) throw (Error)jjte000;}
852 } finally {
853 if (jjtc000) {
854 jjtree.closeNodeScope(jjtn000, true);
855 }
856 }
857 }
858
859 final public JDMInformCommunity InformCommunity() throws ParseException {
860
861 JDMInformCommunity jjtn000 = new JDMInformCommunity(JJTINFORMCOMMUNITY);
862 boolean jjtc000 = true;
863 jjtree.openNodeScope(jjtn000);Token t;
864 try {
865 jj_consume_token(INFORMCOMMUNITY);
866 jj_consume_token(ASSIGN);
867 t = jj_consume_token(IDENTIFIER);
868 jjtree.closeNodeScope(jjtn000, true);
869 jjtc000 = false;
870 jjtn000.community= t.image; {if (true) return jjtn000;}
871 } finally {
872 if (jjtc000) {
873 jjtree.closeNodeScope(jjtn000, true);
874 }
875 }
876 throw new Error("Missing return statement in function");
877 }
878
879 final public void InformInterestedHost() throws ParseException {
880
881 JDMInformInterestedHost jjtn000 = new JDMInformInterestedHost(JJTINFORMINTERESTEDHOST);
882 boolean jjtc000 = true;
883 jjtree.openNodeScope(jjtn000);
884 try {
885 jj_consume_token(HOSTS);
886 jj_consume_token(ASSIGN);
887 HostInform();
888 label_13:
889 while (true) {
890 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
891 case COMMA:
892 ;
893 break;
894 default:
895 jj_la1[20] = jj_gen;
896 break label_13;
897 }
898 jj_consume_token(COMMA);
899 HostInform();
900 }
901 } catch (Throwable jjte000) {
902 if (jjtc000) {
903 jjtree.clearNodeScope(jjtn000);
904 jjtc000 = false;
905 } else {
906 jjtree.popNode();
907 }
908 if (jjte000 instanceof RuntimeException) {
909 {if (true) throw (RuntimeException)jjte000;}
910 }
911 if (jjte000 instanceof ParseException) {
912 {if (true) throw (ParseException)jjte000;}
913 }
914 {if (true) throw (Error)jjte000;}
915 } finally {
916 if (jjtc000) {
917 jjtree.closeNodeScope(jjtn000, true);
918 }
919 }
920 }
921
922 final public void HostInform() throws ParseException {
923
924 JDMHostInform jjtn000 = new JDMHostInform(JJTHOSTINFORM);
925 boolean jjtc000 = true;
926 jjtree.openNodeScope(jjtn000);Token t;
927 try {
928 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
929 case IDENTIFIER:
930 HostName();
931 break;
932 case INTEGER_LITERAL:
933 IpAddress();
934 break;
935 case V6_ADDRESS:
936 IpV6Address();
937 break;
938 default:
939 jj_la1[21] = jj_gen;
940 jj_consume_token(-1);
941 throw new ParseException();
942 }
943 } catch (Throwable jjte000) {
944 if (jjtc000) {
945 jjtree.clearNodeScope(jjtn000);
946 jjtc000 = false;
947 } else {
948 jjtree.popNode();
949 }
950 if (jjte000 instanceof RuntimeException) {
951 {if (true) throw (RuntimeException)jjte000;}
952 }
953 if (jjte000 instanceof ParseException) {
954 {if (true) throw (ParseException)jjte000;}
955 }
956 {if (true) throw (Error)jjte000;}
957 } finally {
958 if (jjtc000) {
959 jjtree.closeNodeScope(jjtn000, true);
960 }
961 }
962 }
963
964 final private boolean jj_2_1(int xla) {
965 jj_la = xla; jj_lastpos = jj_scanpos = token;
966 boolean retval = !jj_3_1();
967 jj_save(0, xla);
968 return retval;
969 }
970
971 final private boolean jj_2_2(int xla) {
972 jj_la = xla; jj_lastpos = jj_scanpos = token;
973 boolean retval = !jj_3_2();
974 jj_save(1, xla);
975 return retval;
976 }
977
978 final private boolean jj_2_3(int xla) {
979 jj_la = xla; jj_lastpos = jj_scanpos = token;
980 boolean retval = !jj_3_3();
981 jj_save(2, xla);
982 return retval;
983 }
984
985 final private boolean jj_3_3() {
986 if (jj_scan_token(INTEGER_LITERAL)) return true;
987 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
988 if (jj_scan_token(DOT)) return true;
989 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
990 return false;
991 }
992
993 final private boolean jj_3_2() {
994 if (jj_scan_token(V6_ADDRESS)) return true;
995 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
996 if (jj_scan_token(MASK)) return true;
997 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
998 if (jj_scan_token(INTEGER_LITERAL)) return true;
999 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
1000 return false;
1001 }
1002
1003 final private boolean jj_3_1() {
1004 if (jj_scan_token(INTEGER_LITERAL)) return true;
1005 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
1006 Token xsp;
1007 while (true) {
1008 xsp = jj_scanpos;
1009 if (jj_3R_14()) { jj_scanpos = xsp; break; }
1010 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
1011 }
1012 if (jj_scan_token(MASK)) return true;
1013 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
1014 if (jj_scan_token(INTEGER_LITERAL)) return true;
1015 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
1016 return false;
1017 }
1018
1019 final private boolean jj_3R_14() {
1020 if (jj_scan_token(DOT)) return true;
1021 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
1022 if (jj_scan_token(INTEGER_LITERAL)) return true;
1023 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
1024 return false;
1025 }
1026
1027 public ParserTokenManager token_source;
1028 ASCII_CharStream jj_input_stream;
1029 public Token token, jj_nt;
1030 private int jj_ntk;
1031 private Token jj_scanpos, jj_lastpos;
1032 private int jj_la;
1033 public boolean lookingAhead = false;
1034 private boolean jj_semLA;
1035 private int jj_gen;
1036 final private int[] jj_la1 = new int[22];
1037 final private int[] jj_la1_0 = {0x100,0x80000,0x100000,0x2000,0x0,0x60000,0x0,0x80000000,0x11000000,0x0,0x0,0x0,0x0,0x2000,0x2000,0x0,0x91000000,0x0,0x8000,0x2000,0x0,0x91000000,};
1038 final private int[] jj_la1_1 = {0x0,0x0,0x0,0x0,0x10,0x0,0x10,0x0,0x0,0x20,0x20,0x40,0x20,0x0,0x0,0x10,0x0,0x10,0x0,0x0,0x10,0x0,};
1039 final private JJCalls[] jj_2_rtns = new JJCalls[3];
1040 private boolean jj_rescan = false;
1041 private int jj_gc = 0;
1042
1043 public Parser(java.io.InputStream stream) {
1044 jj_input_stream = new ASCII_CharStream(stream, 1, 1);
1045 token_source = new ParserTokenManager(jj_input_stream);
1046 token = new Token();
1047 jj_ntk = -1;
1048 jj_gen = 0;
1049 for (int i = 0; i < 22; i++) jj_la1[i] = -1;
1050 for (int i = 0; i < jj_2_rtns.length; i++) jj_2_rtns[i] = new JJCalls();
1051 }
1052
1053 public void ReInit(java.io.InputStream stream) {
1054 jj_input_stream.ReInit(stream, 1, 1);
1055 token_source.ReInit(jj_input_stream);
1056 token = new Token();
1057 jj_ntk = -1;
1058 jjtree.reset();
1059 jj_gen = 0;
1060 for (int i = 0; i < 22; i++) jj_la1[i] = -1;
1061 for (int i = 0; i < jj_2_rtns.length; i++) jj_2_rtns[i] = new JJCalls();
1062 }
1063
1064 public Parser(java.io.Reader stream) {
1065 jj_input_stream = new ASCII_CharStream(stream, 1, 1);
1066 token_source = new ParserTokenManager(jj_input_stream);
1067 token = new Token();
1068 jj_ntk = -1;
1069 jj_gen = 0;
1070 for (int i = 0; i < 22; i++) jj_la1[i] = -1;
1071 for (int i = 0; i < jj_2_rtns.length; i++) jj_2_rtns[i] = new JJCalls();
1072 }
1073
1074 public void ReInit(java.io.Reader stream) {
1075 jj_input_stream.ReInit(stream, 1, 1);
1076 token_source.ReInit(jj_input_stream);
1077 token = new Token();
1078 jj_ntk = -1;
1079 jjtree.reset();
1080 jj_gen = 0;
1081 for (int i = 0; i < 22; i++) jj_la1[i] = -1;
1082 for (int i = 0; i < jj_2_rtns.length; i++) jj_2_rtns[i] = new JJCalls();
1083 }
1084
1085 public Parser(ParserTokenManager tm) {
1086 token_source = tm;
1087 token = new Token();
1088 jj_ntk = -1;
1089 jj_gen = 0;
1090 for (int i = 0; i < 22; i++) jj_la1[i] = -1;
1091 for (int i = 0; i < jj_2_rtns.length; i++) jj_2_rtns[i] = new JJCalls();
1092 }
1093
1094 public void ReInit(ParserTokenManager tm) {
1095 token_source = tm;
1096 token = new Token();
1097 jj_ntk = -1;
1098 jjtree.reset();
1099 jj_gen = 0;
1100 for (int i = 0; i < 22; i++) jj_la1[i] = -1;
1101 for (int i = 0; i < jj_2_rtns.length; i++) jj_2_rtns[i] = new JJCalls();
1102 }
1103
1104 final private Token jj_consume_token(int kind) throws ParseException {
1105 Token oldToken;
1106 if ((oldToken = token).next != null) token = token.next;
1107 else token = token.next = token_source.getNextToken();
1108 jj_ntk = -1;
1109 if (token.kind == kind) {
1110 jj_gen++;
1111 if (++jj_gc > 100) {
1112 jj_gc = 0;
1113 for (int i = 0; i < jj_2_rtns.length; i++) {
1114 JJCalls c = jj_2_rtns[i];
1115 while (c != null) {
1116 if (c.gen < jj_gen) c.first = null;
1117 c = c.next;
1118 }
1119 }
1120 }
1121 return token;
1122 }
1123 token = oldToken;
1124 jj_kind = kind;
1125 throw generateParseException();
1126 }
1127
1128 final private boolean jj_scan_token(int kind) {
1129 if (jj_scanpos == jj_lastpos) {
1130 jj_la--;
1131 if (jj_scanpos.next == null) {
1132 jj_lastpos = jj_scanpos = jj_scanpos.next = token_source.getNextToken();
1133 } else {
1134 jj_lastpos = jj_scanpos = jj_scanpos.next;
1135 }
1136 } else {
1137 jj_scanpos = jj_scanpos.next;
1138 }
1139 if (jj_rescan) {
1140 int i = 0; Token tok = token;
1141 while (tok != null && tok != jj_scanpos) { i++; tok = tok.next; }
1142 if (tok != null) jj_add_error_token(kind, i);
1143 }
1144 return (jj_scanpos.kind != kind);
1145 }
1146
1147 final public Token getNextToken() {
1148 if (token.next != null) token = token.next;
1149 else token = token.next = token_source.getNextToken();
1150 jj_ntk = -1;
1151 jj_gen++;
1152 return token;
1153 }
1154
1155 final public Token getToken(int index) {
1156 Token t = lookingAhead ? jj_scanpos : token;
1157 for (int i = 0; i < index; i++) {
1158 if (t.next != null) t = t.next;
1159 else t = t.next = token_source.getNextToken();
1160 }
1161 return t;
1162 }
1163
1164 final private int jj_ntk() {
1165 if ((jj_nt=token.next) == null)
1166 return (jj_ntk = (token.next=token_source.getNextToken()).kind);
1167 else
1168 return (jj_ntk = jj_nt.kind);
1169 }
1170
1171 private java.util.Vector jj_expentries = new java.util.Vector();
1172 private int[] jj_expentry;
1173 private int jj_kind = -1;
1174 private int[] jj_lasttokens = new int[100];
1175 private int jj_endpos;
1176
1177 private void jj_add_error_token(int kind, int pos) {
1178 if (pos >= 100) return;
1179 if (pos == jj_endpos + 1) {
1180 jj_lasttokens[jj_endpos++] = kind;
1181 } else if (jj_endpos != 0) {
1182 jj_expentry = new int[jj_endpos];
1183 for (int i = 0; i < jj_endpos; i++) {
1184 jj_expentry[i] = jj_lasttokens[i];
1185 }
1186 boolean exists = false;
1187 for (java.util.Enumeration enumv = jj_expentries.elements(); enumv.hasMoreElements();) {
1188 int[] oldentry = (int[])(enumv.nextElement());
1189 if (oldentry.length == jj_expentry.length) {
1190 exists = true;
1191 for (int i = 0; i < jj_expentry.length; i++) {
1192 if (oldentry[i] != jj_expentry[i]) {
1193 exists = false;
1194 break;
1195 }
1196 }
1197 if (exists) break;
1198 }
1199 }
1200 if (!exists) jj_expentries.addElement(jj_expentry);
1201 if (pos != 0) jj_lasttokens[(jj_endpos = pos) - 1] = kind;
1202 }
1203 }
1204
1205 final public ParseException generateParseException() {
1206 jj_expentries.removeAllElements();
1207 boolean[] la1tokens = new boolean[40];
1208 for (int i = 0; i < 40; i++) {
1209 la1tokens[i] = false;
1210 }
1211 if (jj_kind >= 0) {
1212 la1tokens[jj_kind] = true;
1213 jj_kind = -1;
1214 }
1215 for (int i = 0; i < 22; i++) {
1216 if (jj_la1[i] == jj_gen) {
1217 for (int j = 0; j < 32; j++) {
1218 if ((jj_la1_0[i] & (1<<j)) != 0) {
1219 la1tokens[j] = true;
1220 }
1221 if ((jj_la1_1[i] & (1<<j)) != 0) {
1222 la1tokens[32+j] = true;
1223 }
1224 }
1225 }
1226 }
1227 for (int i = 0; i < 40; i++) {
1228 if (la1tokens[i]) {
1229 jj_expentry = new int[1];
1230 jj_expentry[0] = i;
1231 jj_expentries.addElement(jj_expentry);
1232 }
1233 }
1234 jj_endpos = 0;
1235 jj_rescan_token();
1236 jj_add_error_token(0, 0);
1237 int[][] exptokseq = new int[jj_expentries.size()][];
1238 for (int i = 0; i < jj_expentries.size(); i++) {
1239 exptokseq[i] = (int[])jj_expentries.elementAt(i);
1240 }
1241 return new ParseException(token, exptokseq, tokenImage);
1242 }
1243
1244 final public void enable_tracing() {
1245 }
1246
1247 final public void disable_tracing() {
1248 }
1249
1250 final private void jj_rescan_token() {
1251 jj_rescan = true;
1252 for (int i = 0; i < 3; i++) {
1253 JJCalls p = jj_2_rtns[i];
1254 do {
1255 if (p.gen > jj_gen) {
1256 jj_la = p.arg; jj_lastpos = jj_scanpos = p.first;
1257 switch (i) {
1258 case 0: jj_3_1(); break;
1259 case 1: jj_3_2(); break;
1260 case 2: jj_3_3(); break;
1261 }
1262 }
1263 p = p.next;
1264 } while (p != null);
1265 }
1266 jj_rescan = false;
1267 }
1268
1269 final private void jj_save(int index, int xla) {
1270 JJCalls p = jj_2_rtns[index];
1271 while (p.gen > jj_gen) {
1272 if (p.next == null) { p = p.next = new JJCalls(); break; }
1273 p = p.next;
1274 }
1275 p.gen = jj_gen + xla - jj_la; p.first = token; p.arg = xla;
1276 }
1277
1278 static final class JJCalls {
1279 int gen;
1280 Token first;
1281 int arg;
1282 JJCalls next;
1283 }
1284
1285 }